배시 (유닉스 셸)
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.
1. 개요
배시(Bash)는 리처드 스톨먼의 불만에서 시작되어 브라이언 폭스가 1988년 코딩을 시작한 유닉스 셸이다. 1989년에 베타 버전이 출시되었으며, 이후 리눅스, macOS, Windows 등 다양한 운영 체제에서 기본 셸로 사용되었다. 2014년에는 셸쇼크로 명명된 보안 취약점이 발견되기도 했다. 배시는 본 셸의 명령 구문을 확장하고, 셸 스크립트 실행을 지원하며, 다양한 기능을 제공한다. 배시의 시작 스크립트는 사용자 환경을 설정하며, 셸의 종류에 따라 다른 파일을 실행한다. 배시는 POSIX 표준을 따르도록 설계되었지만, 배시 고유의 기능을 사용하면 다른 셸과의 호환성 문제가 발생할 수 있다.
더 읽어볼만한 페이지
- 1989년 소프트웨어 - 한/글
한/글은 1980년대 후반부터 개발된 대한민국의 대표적인 워드프로세서로, 다양한 운영체제 지원, 정부 전자 문서 시스템에서의 역할, 꾸준한 기능 발전과 사용자 편의성 및 국제 표준을 고려한 업데이트를 통해 발전해왔다. - 1989년 소프트웨어 - 마이크로소프트 오피스
마이크로소프트 오피스는 마이크로소프트에서 개발한 사무용 소프트웨어 제품군으로, 워드 프로세서, 스프레드시트, 프레젠테이션 도구 등 다양한 응용 프로그램을 포함하며, 1989년 맥용으로 처음 출시된 이후 다양한 플랫폼에서 사용 가능하며, 구독형 서비스인 마이크로소프트 365로 전환을 가속화하고 있다. - 유닉스 셸 - 유닉스 계열
유닉스 계열은 유닉스 운영체제의 특징과 설계를 공유하는 운영체제들을 지칭하며, 유전적, 상표, 기능적 유닉스로 분류되고 macOS는 상표 유닉스이자 유전적 유닉스에 해당하며 리눅스는 기능적 유닉스의 대표적인 예이다. - 유닉스 셸 - 본 셸
본 셸은 스티븐 본이 개발하여 1979년 유닉스에 포함된 셸로, 셸 스크립트, 제어 흐름, 변수, 시그널 처리 등의 기능을 제공하며 여러 셸에 영향을 주었고 현재도 널리 사용된다. - 텍스트 지향 프로그래밍 언어 - Tcl
Tcl은 존 오스터하우트가 개발한 명령어 기반의 프로그래밍 언어로, Tk 툴킷과 결합하여 GUI 스크립팅 환경으로 발전했으며, 다양한 운영체제에서 사용 가능하고 C, C++, Java 등 다른 언어와의 인터페이스를 지원한다. - 텍스트 지향 프로그래밍 언어 - PHP
PHP는 라스무스 러도프가 개발한 범용 스크립팅 언어로, 웹 개발에 널리 사용되며 LAMP 아키텍처의 핵심 요소이다.
배시 (유닉스 셸) - [IT 관련 정보]에 관한 문서 | |
---|---|
기본 정보 | |
![]() | |
개발자 | Chet Ramey |
최초 릴리스 | 1989년 6월 8일 |
프로그래밍 언어 | C |
운영체제 | BeOS Haiku macOS (GPL-2.0-or-later; 제3자를 통한 GPL-3.0-or-later) 유닉스 계열 윈도우 (GPL-3.0-or-later) |
플랫폼 | GNU |
지원 언어 | 다국어 (gettext) |
종류 | 셸 (컴퓨팅) 유닉스 셸 명령어 언어 |
라이선스 | GPL-3.0-or-later |
웹사이트 | Bash 공식 웹사이트 |
명칭 유래 | |
어원 | "Bourne Again Shell"은 유닉스 셸인 "Bourne Shell"의 이름에서 따온 말장난. |
특징 | |
기능 | 명령어 대체 반복 |
2. 역사
브라이언 폭스는 1988년 1월 10일에 배시 개발을 시작했다.[17] 1989년 6월 8일, 폭스는 베타 버전인 .99 버전을 배시로 출시했다.[1] 폭스는 1992년 중반[19]부터 1994년 중반[20]까지 자유 소프트웨어 재단(FSF)에서 배시의 주요 유지 관리자로 활동하다가, 체트 라미(Chet Ramey)에게 책임을 넘겼다.[22]
배시는 리눅스 배포판[27][28]과 Catalina 이전의 애플 macOS[29][30][31]에서 기본 대화형 셸로 사용되며 리눅스 사용자들 사이에서 가장 인기 있는 셸이 되었다. 또한 배시는 Windows[32][33], BeOS[14][15], Haiku[16], Cygwin, MinGW, DJGPP, DOS, Novell NetWare, OpenVMS, ArcaOS, 안드로이드 (운영 체제) 등 다양한 운영 체제로 이식되었다.
2014년 9월, 스테판 샤젤라스(Stéphane Chazelas)는[36] 배시에서 셸쇼크라는 심각한 보안 결함을 발견했다.[37]
2. 1. 개발 배경
리처드 스톨먼과 자유 소프트웨어 재단(FSF)은 GNU 운영체제를 위한 자유 소프트웨어 셸이 필요하다고 생각했다. 기존 본 셸(sh)은 자유 소프트웨어가 아니었기 때문에, FSF는 본 셸을 대체하고 기능을 확장한 새로운 셸 개발을 추진했다.[104][114] 브라이언 폭스는 1988년 1월 10일에 리처드 스톨먼의 제안으로 Bash 코딩을 시작했다.[143][17][113] 이전 개발자의 진척이 부진하여 어려움을 겪었으나,[141][1][104] 폭스는 FSF의 지원을 받아 개발에 매진했다.[1][18][104][114] 1989년 6월 8일, Bash는 베타 버전(.99)으로 처음 공개되었다.[1][106]2. 2. 주요 개발자 및 버전
리처드 스톨먼이 이전 개발자의 진척 부진에 불만을 느껴, 브라이언 폭스는 1988년 1월 10일 Bash 코딩을 시작했다.[143] 자유 소프트웨어 재단(FSF)의 직원이었던 폭스는 1989년 6월 8일에 베타 버전인 .99 버전을 출시했다.[1] 1992년 중반[19]부터 1994년 중반[20]까지 FSF에서 주요 유지 관리자로 활동했으며, 이후 책임은 쳇 라미(Chet Ramey)에게 이전되었다.[22]이후 배시는 리눅스 사용자들 사이에서 가장 인기 있는 셸이 되었고, 다양한 리눅스 배포판[27][28]과 Catalina(10.15) 이전의 애플 macOS 릴리스에서 기본 대화형 셸이 되었다.[29][30][31]
2014년 9월에는 스테판 샤젤라스(Stéphane Chazelas)가[36] 배시에서 심각한 보안 결함인 셸쇼크를 발견하여 긴급 업데이트가 이루어졌다.[37]
3. 기능
Bash는 본 셸(sh) 명령어 문법의 상위 집합으로, 대부분의 sh 스크립트를 수정 없이 실행할 수 있다. KornShell(ksh) 및 C 셸(csh)의 유용한 기능(예: 명령어 히스토리, 디렉터리 스택, 작업 제어)을 통합하여 사용자 편의성을 높였다.[45] 또한 명령행 편집, 명령줄 완성(자동 완성, 탭 완성),[46] 정규 표현식 일치 등 다양한 고급 기능을 제공한다. 연관 배열,[91] 프로세스 치환, 확장된 문자열 조작 등 Bash만의 고유한 기능도 있다.
Bash는 다음과 같은 다양한 기능을 제공한다.[38]
- 함수 호출
- 대화형 셸, 비대화형 셸, 로그인 셸
- 명령줄 인터페이스
- 종료 상태 코드
- 제어 구조
- 조건 테스트: `if`, `case`, `select`, 논리 AND (`&&`) 및 OR (`||`)
- 반복: `for`, `while`, `until` 루프, 산술 C 스타일 루프 (`for ((`)
- 파일 유형, 문자열 값 및 정수 값 테스트를 위한 구문
- 기존의 단일 대괄호 테스트: `[`
- 최신 이중 대괄호 테스트: `...` (확장된 정규 표현식 및 extglob 일치, `<` 및 `>`를 사용한 사전식 정렬 포함)
- UNIX 스타일 파이프라인: `|`
- 서브셸: `( ... )`
- `trap` 내장 명령을 사용한 프로세스 간 통신 수단으로의 신호 전송
- 비동기 실행: `job_spec &`
- 이식성 모드에서 POSIX 표준에 따라 명령을 해석할 수 있는 셸
- 명령 구문 분석
- 주석 무시 (Bourne 스타일 `#` 해시태그 주석 및 Thompson 스타일 `:` 콜론 주석)
- 명령은 한 줄에 하나씩 구문 분석 (제어 구조 적용, 백슬래시 `\` 이스케이프도 줄 끝에서 적용)
- 인용 규칙에 따라 단어(단어 분할)로 분할 (ANSI-C 인용 `$''...'` 포함)
- 결과 문자열에 대해 다음 순서로 일곱 종류의 확장 수행
1. 중괄호 확장 `kernel{-headers}`[39]
2. 물결표 확장 `~`
3. 왼쪽에서 오른쪽 순서로:
- 매개변수 및 변수 확장 (`$foo` 또는 `${bar}`), 동적으로 범위가 지정된 변수, 무제한 크기의 인덱싱된 배열, `declare -A`를 통한 연관 배열, 외부 유틸리티보다 일부 작업을 더 빠르게 수행할 수 있는 확장 구문(예: 패턴 대체, 일치하는 접두사 또는 접미사 패턴 제거, 배열 키 인쇄, Null 또는 Unset인 경우 오류 표시 등) 포함
- 명령 치환: `$( ... )`
- 프로세스 치환(시스템에서 지원하는 경우): `<()` 또는 `>()`
- 산술 확장: `(( ... ))` 또는 `$(( ... ))` (2에서 64까지의 모든 기수에서 정수 산술은 가능하지만, 부동 소수점 산술은 셸 자체 내에서 사용할 수 없음)
4. 단어 분할 (다시)
5. 경로 이름 확장 (셸 스타일 글로빙 및 `*`, `?`, `[...]`를 사용한 패턴 일치)
6. 인용 제거
- 표준 입력, 표준 출력 및 표준 오류 데이터 스트림의 리디렉션 수행 (파일 쓰기 `>`, 추가 `>>`, Here 문서 `<<`, Here 문자열 `<<<`, 셸의 "noclobber" 설정이 활성화된 경우 파일 덮어쓰기를 강제할 수 있는 리디렉션 연산자 `>|` 포함)
- 명령 이름 조회
- 셸 내부에 있는 명령 (셸 별칭, 셸 예약어, 셸 함수, 셸 내장 명령)
- 셸 외부의 명령 (UNIX 스타일 프로그램(예: `ls` 또는 `ln`), 실행 가능한 명령을 포함하는 셸 스크립트 파일)
- 결과 문자열이 명령으로 실행
- 구성 가능한 실행 환경
- `~/.bashrc` 및
~/.profile
과 같은 셸 및 세션 시작 파일 (dotfile) - 셸 동작을 변경하는 설정 (`set` 내장) 및 셸 옵션 (`shopt` 내장)
- 대화형 호출로만
- 무제한 크기 명령 기록
- 작업 및 작업 제어
- 디렉터리 스택 (`pushd` 및 `popd` 내장 참조)
- 탭 완성
- 구성 가능한 프롬프트
- GNU readline을 사용한 명령줄 편집
- 디버깅 목적의 경량 로깅 (xtrace) 및 기타 경량 디버깅 옵션 (errexit, noexec, nounset, pipefail 등)
- 셸 호환 모드: bash 5.1은 bash 4.2 등으로 작동 가능
- 문서
- 내장 `help` 명령
- man 페이지
- GNU 매뉴얼과 동일한 info 페이지
- 비공식 지원 방법
- libera.chat #bash의 IRC
- https://www.gnu.org/software/bash/의 메일링 리스트
Bash의 키워드, 구문, 동적으로 범위가 지정된 변수 및 기타 기본 언어 기능은 모두 sh에서 복사되었다. 다른 기능(예: 기록)은 csh 및 ksh에서 복사되었다.
3. 1. 시작 스크립트
배시는 시작할 때 다양한 점(.) 파일 내의 명령들을 실행하여 사용자 환경을 설정한다. 배시 셸 스크립트와는 다르게, 점 파일은 일반적으로 실행 권한이 활성화되어 있지 않고#!/bin/bash
와 같은 인터프리터 지시자(셔뱅)도 없다.[134]배시는 셸의 종류에 따라 다른 시작 파일들을 실행한다.
조건 | 순서 |
---|---|
대화형 비로그인 셸로 시작 | Bash는 /bash.bashrc 를 읽고 실행한 다음, (존재하는 경우) ~/.bashrc 를 읽고 실행한다. 이는 --norc 옵션을 사용함으로써 금지할 수 있다. --rcfile 파일 옵션에 의해, ~/.bashrc 대신 파일 에서 명령을 읽고 실행하도록 Bash에 강제할 수 있다. |
대화형 로그인 셸로 시작 | Bash는 (존재하는 경우) /etc/profile (파일명을 /etc/bash.bashrc 로 개명되는 경우가 많음)를 읽고 실행한다. 이 파일을 읽은 후, ~/.bash_profile , ~/.bash_login , 및 ~/.profile 을 이 순서대로 조사하여, 존재하고 읽을 수 있는 것 중 첫 번째 것을 읽고 실행한다. |
로그인 셸을 종료한 경우 | Bash는 (존재하는 경우) ~/.bash_logout 을 읽고 실행한다. |
Bash의 각 요소는 본 셸 및 C 셸에서 파생되었다. 이 때문에 제한적이기는 하지만, 시동 파일을 본 셸과 공유할 수 있으며, C 셸 사용자에게 친숙한 몇 가지 시동 시퀀스를 제공한다.[134]
3. 2. 보안 문제
2014년 9월, 유닉스/리눅스 전문가인 스테판 샤젤라스(Stéphane Chazelas)는 배시(Bash)에서 보안 결함을 발견했다.[36] 9월 24일에 처음 공개된 이 버그는 셸쇼크로 명명되었으며, 배시를 사용하는 CGI 스크립트가 취약해져 임의 코드 실행을 가능하게 할 수 있으므로 심각한 것으로 간주되었다. 이 버그는 배시가 환경 변수를 통해 함수 정의를 서브 셸로 전달하는 방식과 관련이 있었다.[37]1989년 8월 버전 1.03부터 존재해온 보안 구멍이 2014년 9월 초에 발견되었고, 이는 셸쇼크로 명명되었으며, 곧바로 공격의 범위를 인터넷 전반으로 확대시켰다.[85][86][87] 이 버그들을 수정하기 위한 패치는 버그가 확인된 직후에 배포되었다.
4. 이식성
`--posix` 옵션을 사용하여 배시를 실행하거나 스크립트에서 `set -o posix`를 사용하면, 배시는 POSIX 1003.2 표준을 매우 엄격하게 준수하게 된다.[53] 따라서 이식성을 고려한 배시 셸 스크립트는 적어도 POSIX 셸 표준을 고려해야 한다.[53]
하지만, 코드 조각이 POSIX에서 찾아볼 수 없는 배시 기능을 사용하면 "배시즘"이라고 하며 이식 가능한 사용에 문제가 된다.[56] 데비안의 `checkbashisms` 및 Vidar Holen의 `shellcheck`를 사용하여 스크립트에 이러한 배시즘이 포함되어 있지 않은지 확인할 수 있다.[56][57]
POSIX에서 찾아볼 수 없는 배시 기능은 다음과 같다:[53][54]
어떤 기능을 사용할 수 있는지는 대상 셸에 따라 다르다. 데비안 정책은 스크립트에서 일부 확장을 허용하지만(dash 셸에 있기 때문),[54] autoconf의 `configure`와 같이 POSIX 이전의 본 셸을 지원하려는 스크립트는 사용할 수 있는 기능이 훨씬 더 제한적이다.[58]
브레이스 전개는 얼터네이션이라고도 불리며, C 셸에서 가져온 기능이다.[133] 가능한 조합의 세트를 생성하며, 생성된 결과가 파일로 존재할 필요는 없다. 전개된 각 문자열 결과는 정렬되지 않고, 저장된 순서대로 왼쪽에서 오른쪽으로 나열된다. 예를 들면 다음과 같다.
```console
$ echo a{p,c,d,b}e
ape ace ade abe
$ echo {a,b,c}{d,e,f}
ad ae af bd be bf cd ce cf
```
본 셸에서는 배시와 같은 출력을 반환하지 않으므로, 이식성을 위해 셸 스크립트에서 브레이스 전개를 사용하지 않아야 한다.
```console
$ # 전통적인 셸은 Bash와 같은 출력을 반환하지 않는다.
$ /bin/sh -c 'echo a{p,c,d,b}e'
a{p,c,d,b}e
참조
[1]
웹사이트
Free Software Foundation — working together for free software — Front Page
https://www.fsf.org/
2024-05-19
[2]
웹사이트
GNU in a Nutshell
https://www.gnu.org/[...]
2024-05-19
[3]
웹사이트
GNU's Bulletin, vol. 1 no. 7, June, 1989 :: GNU's Who
https://www.gnu.org/[...]
2024-05-19
[4]
웹사이트
GNU Software
https://www.gnu.org/[...]
2024-05-19
[5]
웹사이트
Bourne shell
https://www.ibm.com/[...]
2024-05-19
[6]
뉴스그룹
GNU + BSD = ?
https://groups.googl[...]
2021-12-28
[7]
간행물
The A-Z of Programming Languages: BASH/Bourne-Again Shell
https://web.archive.[...]
2011-03-21
[8]
뉴스그룹
Bash is in beta release!
https://groups.googl[...]
2010-10-28
[9]
웹사이트
I Almost Get a Linux Editor and Compiler
http://www.drdobbs.c[...]
2020-09-12
[10]
웹사이트
About the GNU Project
https://www.gnu.org/[...]
Free Software Foundation
2011-03-13
[11]
간행물
Bourne-again Shell
https://web.archive.[...]
2011-03-13
[12]
웹사이트
comp.os.minix
https://groups.googl[...]
2009-09-06
[13]
웹사이트
Bash FAQ, version 4.14
https://web.archive.[...]
2016-04-09
[14]
웹사이트
A desktop alternative
https://www.forbes.c[...]
[15]
웹사이트
Appendix A: Using the BeOS Command Line Shell
http://testou.free.f[...]
[16]
웹사이트
Terminal
https://www.haiku-os[...]
[17]
간행물
shell.c
http://ftp.gnu.org/g[...]
Free Software Foundation
2010-11-01
[18]
웹사이트
About the GNU Project
https://www.gnu.org/[...]
Free Software Foundation
2011-03-21
[19]
뉴스그룹
January 1993 GNU's Bulletin
https://groups.googl[...]
1993-04-20
[20]
웹사이트
Bash - the GNU shell (Reflections and Lessons Learned)
http://www.linuxjour[...]
2008-11-13
[21]
간행물
Dates in your Computerworld interview
https://www.scribd.c[...]
2010-10-31
[22]
뉴스
The A-Z of Programming Languages: BASH/Bourne-Again Shell
http://www.computerw[...]
2022-03-01
[23]
웹사이트
The GNU Bourne-Again Shell
https://tiswww.case.[...]
Case Western Reserve University
2022-03-01
[24]
뉴스그룹
Bash 0.99 fixes & improvements
https://groups.googl[...]
2010-11-01
[25]
뉴스그룹
Some bash-1.02 fixes
https://groups.googl[...]
2010-10-30
[26]
뉴스그룹
Availability of bash 1.05
https://groups.googl[...]
2010-10-30
[27]
서적
CompTIA Linux+ Powered by Linux Professional Institute Study Guide: Exam LX0-103 and Exam LX0-104
https://books.google[...]
John Wiley & Sons, Inc.
2016-06-06
[28]
서적
Mastering Linux
https://books.google[...]
John Wiley & Sons, Inc.
2016-06-06
[29]
서적
Beginning Shell Scripting
https://books.google[...]
John Wiley & Sons, Inc.
2016-06-06
[30]
웹사이트
Use zsh as the default shell on your Mac - Apple Support
https://support.appl[...]
2019-07-01
[31]
웹사이트
Apple replaces bash with zsh as the default shell in macOS Catalina
https://www.theverge[...]
2019-06-13
[32]
웹사이트
Missing source code - GPL compliance? · Issue #107 · Microsoft/WSL
https://github.com/M[...]
2016-07-08
[33]
웹사이트
GNU Bash
http://www.softpedia[...]
SoftNews
2016-04-09
[34]
웹사이트
Installing the new GNU packages
https://sourceforge.[...]
2020-09-04
[35]
웹사이트
Compatibility Subsystems
https://www.arcanoae[...]
2020-09-04
[36]
뉴스
Linux bash exit status and how to set exit status in bash - Techolac
https://www.techolac[...]
2017-06-10
[37]
웹사이트
Bash specially-crafted environment variables code injection attack
https://securityblog[...]
Red Hat
2014-09-24
[38]
웹사이트
Command Execution Environment (Bash Reference Manual)
https://www.gnu.org/[...]
[39]
웹사이트
Brace Expansion (Bash Reference Manual)
https://www.gnu.org/[...]
[40]
웹사이트
Bash Reference Manual
https://www.gnu.org/[...]
[41]
웹사이트
Debugging Bash scripts
http://tldp.org/LDP/[...]
[42]
웹사이트
The Set Builtin (Bash Reference Manual)
https://www.gnu.org/[...]
[43]
웹사이트
Bash changes [Bash Hackers Wiki (DEV 20200708T2203)]
https://wiki-dev.bas[...]
[44]
웹사이트
Bourne Shell Builtins (Bash Reference Manual)
https://www.gnu.org/[...]
[45]
웹사이트
Bash Reference Manual
https://www.gnu.org/[...]
[46]
웹사이트
Working more productively with bash 2.x/3.x
http://www.caliban.o[...]
[47]
간행물
The GNU Bash Reference Manual, for Bash, Version 4.1
https://www.gnu.org/[...]
2009-12-23
[48]
웹사이트
Advanced Bash-Scripting Guide
http://www.tldp.org/[...]
[49]
웹사이트
Bash, version 4
http://tldp.org/LDP/[...]
[50]
웹사이트
Arrays (Bash Reference Manual)
https://www.gnu.org/[...]
[51]
웹사이트
macos - Update bash to version 4.0 on OSX
https://apple.stacke[...]
[52]
웹사이트
Why does macOS Catalina use Zsh instead of Bash? Licensing
https://thenextweb.c[...]
2019-06-04
[53]
웹사이트
Portability Issues
http://tldp.org/LDP/[...]
ibiblio.org
[54]
웹사이트
10. Files
https://www.debian.o[...]
[55]
웹사이트
How To Format Date And Time In Linux, MacOS, And Bash?
https://www.shell-ti[...]
[56]
ManKier
checkbashisms
[57]
ManKier
shellcheck
[58]
웹사이트
Portable Shell
https://www.gnu.org/[...]
[59]
웹사이트
BASH Help - A Bash Tutorial
http://www.hypexr.or[...]
Hypexr.org
2012-10-05
[60]
웹사이트
Bash Reference Manual
https://www.gnu.org/[...]
[61]
Webarchive
bashbug(1)
http://linux.die.net[...]
2018-10-02
[62]
Webarchive
Linux / Unix Command: bashbug
https://developer.ap[...]
2014-10-06
[63]
웹사이트
Bash Reference Manual
https://tiswww.case.[...]
[64]
웹사이트
Working more productively with bash 2.x/3.x
http://www.caliban.o[...]
[65]
웹사이트
Index of /gnu/bash
https://ftp.swin.edu[...]
[66]
웹사이트
An Introduction to Programmable Completion
https://tldp.org/LDP[...]
[67]
웹사이트
Definition of BORN-AGAIN
https://www.merriam-[...]
[68]
웹사이트
Bash - GNU Project - Free Software Foundation
https://www.gnu.org/[...]
[69]
웹사이트
What is Bash? (Bash Reference Manual)
https://www.gnu.org/[...]
[70]
웹사이트
Definition of BASH
https://www.merriam-[...]
2024-01-05
[71]
웹사이트
Irony Definition, Common Examples, and Significance in Literature
https://literarydevi[...]
2020-08-31
[72]
웹사이트
Innuendo - Examples and Definition of Innuendo
https://literarydevi[...]
2014-01-02
[73]
웹사이트
BashGuide/Arrays - Greg's Wiki
https://mywiki.woole[...]
2024-01-10
[74]
웹사이트
CommandSubstitution - Greg's Wiki
https://mywiki.woole[...]
2024-01-10
[75]
웹사이트
BashGuide/TestsAndConditionals - Greg's Wiki
https://mywiki.woole[...]
2024-01-10
[76]
웹사이트
CHANGES - bash.git - bash
https://git.savannah[...]
2024-01-10
[77]
웹사이트
Bash changes [Bash Hackers Wiki]
https://wiki.bash-ha[...]
2021-02-14
[78]
웹사이트
Obsolete and deprecated syntax [Bash Hackers Wiki]
https://wiki.bash-ha[...]
2024-01-10
[79]
웹사이트
The Open Group Base Specifications Issue 7, 2018 edition
https://pubs.opengro[...]
[80]
웹사이트
BASH(1) Manual Page
https://tiswww.case.[...]
[81]
웹사이트
bash.0\doc - bash.git - bash
https://git.savannah[...]
[82]
웹사이트
The GNU Bourne-Again Shell
https://tiswww.case.[...]
[83]
웹사이트
Frequently Asked Questions
https://tiswww.case.[...]
[84]
웹사이트
oss-sec mailing list archives
http://seclists.org/[...]
2014-10-04
[85]
웹사이트
Patch Bash NOW: 'Shell Shock' bug blasts OS X, Linux systems wide open
https://www.theregis[...]
2014-09-25
[86]
뉴스
Security Experts Expect 'Shellshock' Software Bug in Bash to Be Significant
https://www.nytimes.[...]
2014-09-25
[87]
웹사이트
Shellshock makes Heartbleed look insignificant
https://www.zdnet.co[...]
2014-09-29
[88]
웹사이트
README file
https://www.gnu.org/[...]
2014-04-16
[89]
웹사이트
bash-1.11
http://www.oldlinux.[...]
2021-06-09
[90]
웹사이트
bash-1.05.tar
http://www.oldlinux.[...]
[91]
웹사이트
BashFAQ/061 - Greg's Wiki
https://mywiki.woole[...]
2021-03-01
[92]
웹사이트
Is there a way to download the presumably initial bash source bash-0.99?
https://unix.stackex[...]
[93]
웹사이트
How to install Bash shell command-line tool on Windows 10
http://www.windowsce[...]
2016-11-20
[94]
웹사이트
How to Install the Windows Subsystem for Linux on Windows 11
https://www.howtogee[...]
2022-10-12
[95]
웹사이트
User Environment Feature Changes
https://docs.oracle.[...]
Oracle
2018-06-08
[96]
웹사이트
github version history NEWS v5.0
https://github.com/b[...]
2021-03-01
[97]
웹사이트
Bash changes [Bash Hackers Wiki]
https://wiki.bash-ha[...]
2019-11-25
[98]
웹사이트
Bash-5.0 release available
https://lists.gnu.or[...]
2021-03-01
[99]
웹사이트
Bash FAQ
ftp://ftp.cwru.edu/p[...]
[100]
웹사이트
macos - Why does Apple ship bash 3.2? - Ask Different
https://apple.stacke[...]
[101]
웹사이트
Missing source code - GPL compliance? · Issue #107 · microsoft/WSL · GitHub
https://github.com/M[...]
[102]
웹사이트
GNU Bash
http://www.softpedia[...]
SoftNews
2016-04-09
[103]
웹사이트
README file
https://www.gnu.org/[...]
2017-10-21
[104]
뉴스그룹
GNU + BSD = ?
https://groups.googl[...]
2011-03-22
[105]
간행물
The A-Z of Programming Languages: BASH/Bourne-Again Shell
http://www.computerw[...]
2011-03-21
[106]
뉴스그룹
Bash is in beta release!
https://groups.googl[...]
2010-10-28
[107]
웹사이트
How to install Bash shell command-line tool on Windows 10
http://www.windowsce[...]
[108]
간행물
C Programming
Dr. Dobb's Journal
2001-07-01
[109]
웹사이트
About the GNU Project
https://www.gnu.org/[...]
Free Software Foundation
2011-03-13
[110]
Citation
Bourne-again Shell
http://www.markus-ga[...]
2011-03-13
[111]
서적
LINUX: Preparación para la certificación LPIC-1 : Exámenes LPI 101 y LPI 102
https://books.google[...]
Editions ENI
2017-05-27
[112]
서적
Il progetto GNU
https://books.google[...]
Apogee Publisher
2017-05-27
[113]
Citation
shell.c
http://ftp.gnu.org/g[...]
フリーソフトウェア財団
1996-08-29
[114]
웹사이트
About the GNU Project
https://www.gnu.org/[...]
Free Software Foundation
2011-03-21
[115]
뉴스그룹
January 1993 GNU's Bulletin
https://groups.googl[...]
2010-10-28
[116]
Citation
Dates in your Computerworld interview
https://www.scribd.c[...]
2010-10-31
[117]
웹사이트
Bash - the GNU shell (Reflections and Lessons Learned)
http://www.linuxjour[...]
2008-11-13
[118]
뉴스그룹
Bash 0.99 fixes & improvements
https://groups.googl[...]
2010-11-01
[119]
뉴스그룹
Some bash-1.02 fixes
https://groups.googl[...]
2010-10-30
[120]
뉴스그룹
Availability of bash 1.05
https://groups.googl[...]
2010-10-30
[121]
서적
Beginning Shell Scripting
https://books.google[...]
John Wiley & Sons, Inc.
2016-06-06
[122]
서적
Mastering Linux
https://books.google[...]
John Wiley & Sons, Inc.
2016-06-06
[123]
서적
CompTIA Linux+ Powered by Linux Professional Institute Study Guide: Exam LX0-103 and Exam LX0-104
https://books.google[...]
John Wiley & Sons, Inc.
2016-06-06
[124]
웹사이트
https://www.linkedin[...]
[125]
CVE
CVE - CVE-2014-6271
https://cve.mitre.or[...]
[126]
CVE
CVE - CVE-2014-6277
https://cve.mitre.or[...]
[127]
CVE
CVE - CVE-2014-7169
https://cve.mitre.or[...]
[128]
웹사이트
Bash specially-crafted environment variables code injection attack
https://securityblog[...]
レッドハット
2017-10-21
[129]
Citation
The GNU Bash Reference Manual, for Bash, Version 4.1
https://www.gnu.org/[...]
2010-10-26
[130]
웹사이트
Advanced Bash-Scripting Guide
http://www.tldp.org/[...]
2017-03-05
[131]
문서
The syntax matches that shown on the regex(7) manページ.
[132]
문서
The shell provides associative array variables, with the appropriate support to create, delete, assign values to, and expand them.
https://tiswww.case.[...]
[133]
문서
C shellとBashのブレース展開は要素がひとつの時の挙動が異なる。
[134]
문서
C shellでは ~/.cshrc がインタラクティブサブシェルのために呼び出される。また、tcsh では ~/.tcshrc が、その後 ~/.cshrc がインタラクティブサブシェルのために呼び出される。
[135]
웹사이트
Portability Issues
http://tldp.org/LDP/[...]
ibiblio.org
2017-10-21
[136]
웹사이트
https://linux.die.ne[...]
[137]
웹사이트
BASH Help - A Bash Tutorial
http://www.hypexr.or[...]
Hypexr.org
2013-07-21
[138]
웹사이트
bashbug(1)
http://linux.die.net[...]
die.net
[139]
웹사이트
Linux / Unix Command: bashbug
https://developer.ap[...]
apple.com
[140]
웹인용
README file
http://www.gnu.org/s[...]
[141]
웹인용
GNU + BSD = ?
http://groups.google[...]
comp.unix.questions
1988-02-10
[142]
저널
The A-Z of Programming Languages: BASH/Bourne-Again Shell
http://www.computerw[...]
2008-05-30
[143]
인용
shell.c
http://ftp.gnu.org/g[...]
Free Software Foundation
1996-08-29
본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.
문의하기 : help@durumis.com